package cn.itcast.web.controller;

import cn.itcast.domain.system.User;
import org.springframework.beans.factory.annotation.Autowired;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

//该类的目的： 把Controller公共部门的信息抽离出来，提高我们的开发效率。
public class BaseController {

    @Autowired
    protected HttpServletRequest request;


    //这里是会报错，但是这个是idea的问题，我们不需要管，我们代码是可以正常的执行的。
    @Autowired
    protected HttpServletResponse response;

    @Autowired
    protected HttpSession session;

    // 从session中获取登录用户对象
    protected User getLoginUser(){
        // return (User) session.getAttribute("loginUser");
        User loginUser = (User) session.getAttribute("loginUser");
        return loginUser;
    }

    // 需求
    // 目前已经实现了登陆，现在需要在BaseController中动态获取登陆用户所属企业信息 User
    //登陆者所属的公司的id
    public String getLoginCompanyId(){
        // return "1";
        // 用户登录后，获取登录用户所在的企业i
        return getLoginUser().getCompanyId();
    }

    //登陆者所属公司的名称
    public String getLoginCompanyName(){
        // return "传智播客教育股份有限公司";
        return getLoginUser().getCompanyName();
    }


}
